package bastanteo.negocio;

import bastanteo.excepcion.LoginExcepcion;
import bastanteo.dao.UsuarioDAO;
import bastanteo.dao.PersonaDAO;
import bastanteo.excepcion.DAOExcepcion;
import bastanteo.modelo.Persona;
import bastanteo.modelo.Usuario;

public class UsuarioNegocio {

	public void insertarUsuario(String codPers, String nombre, String apeMat, String apePat,
			String tipDoc, String numDoc, String idUser, String clave1, String clave2, String rol) throws DAOExcepcion {

		UsuarioDAO daoUsuario = new UsuarioDAO();
		if (clave1!=clave2){
			if (daoUsuario.validarUsuario2(idUser, numDoc)==0){
				
				Persona modeloPersona = new Persona();
				modeloPersona.setCodPers(codPers);
				modeloPersona.setNombre(nombre);
				modeloPersona.setApeMat(apeMat);
				modeloPersona.setApePat(apePat);
				modeloPersona.setTipDoc(tipDoc);
				modeloPersona.setNumDoc(numDoc);
				
				PersonaDAO daoPersona = new PersonaDAO();
				daoPersona.insertar(modeloPersona);
				
				
				Usuario modeloUsuario = new Usuario();
				modeloUsuario.setCodPers(codPers);
				modeloUsuario.setIdUser(idUser);
				modeloUsuario.setClave(clave1);
				modeloUsuario.setRol(rol);
				
				daoUsuario.insertar(modeloUsuario);
			}
			else{
				System.err.println("Ya existe un usuario con el DNI o IdUser registrado");
			}				
			
		}
		else{
			System.err.println("La claves ingresadas deben ser iguales");
		}
		
			
	}	
	
	public Usuario validarUsuario(String idUsuario, String clave)
	throws DAOExcepcion, LoginExcepcion {
		UsuarioDAO dao = new UsuarioDAO();
		return dao.validarUsuario(idUsuario, clave);
	}	
	
	
	public Usuario obtenerUsuario(String codPers) throws DAOExcepcion {		
		
		UsuarioDAO daoUsr = new UsuarioDAO();
		
		Usuario modeloUsr = daoUsr.obtener(codPers);		
		
		return modeloUsr;
		
	}	

}
